Data encryption is used in many computing environments such as grid-computing systems to convert data (plaintext) into what appears to be random data or random characters (cipher text). The cipher text is difficult to understand or decode without a corresponding key for use during a decryption (or decoding) procedure. The encrypted ciphertext is useful when communicating data in a confidential manner since individuals that do not have the corresponding decryption key generally cannot decrypt or understand the ciphertext. A stream cipher is a particular method of encrypting data in which each bit of the plaintext is sequentially encrypted using one bit of the key.
Grid computing refers to the sharing of multiple computing resources to accomplish various computing tasks, such as data processing, data storage and performing complex data calculations. Grid-computing environments are particularly useful for solving problems that require significant computational resources. The combination of multiple computing resources to solve the problem allows the tasks to be distributed among the multiple computing resources, thereby increasing the speed of solving the problem. The size of a grid-computing environment may vary from a few computing systems located in a common area to a large network of computers distributed across a significant geographic area and connected through multiple data communication networks. Grid-computing environments use a set of software services, commonly referred to as “middleware,” to manage the distribution of computing tasks to the various computing resources.